package org.xiaov.bean.result;

import java.io.Serializable;

/**
 * <p>
 * 封装好的结果集
 * </p>
 *
 * @author xiaovcloud
 * @version：1.0
 * @since 2021/2/26 12:47
 */
@Deprecated
public class ApiResult implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * 状态码
     */
    protected Integer code;

    public Integer getCode() {
        return code;
    }

    /**
     * 创建成功返回体，无数据
     *
     * @return ApiResult
     */
    @SuppressWarnings("rawtypes")
    public static ApiResult success() {
        return new SuccessApiResult();
    }

    /**
     * 创建成功返回体，包含数据
     *
     * @param data 数据体
     * @return ApiResult
     */
    public static <T> ApiResult success(T data) {
        return new SuccessApiResult<T>(data);
    }

    /**
     * 创建错误返回体
     *
     * @param code    错误码
     * @param message 错误信息
     * @return ApiResult
     */
    public static ApiResult error(Integer code, String message) {
        return new ErrorApiResult(code, message);
    }

    /**
     * 创建错误返回体
     *
     * @param message 错误信息
     * @return ApiResult
     */
    public static ApiResult error(String message) {
        return new ErrorApiResult(message);
    }

}
